#!/bin/bash
# Shell脚本用于配置和启动名为"rust-tcp"的Rust程序，
# 为网络接口"mytun"分配IP地址并启用该接口。
# 编译项目
cargo build --release

# 设置Rust编译的目标目录
export CARGO_TARGET_DIR=/home/hongtao945/rust/project/rust-tcp/target

# 授予"rust-tcp"可执行文件cap_net_admin权限
sudo setcap cap_net_admin=eip $CARGO_TARGET_DIR/release/rust-tcp

# 在后台运行"rust-tcp"程序
$CARGO_TARGET_DIR/release/rust-tcp &

# 获取"rust-tcp"程序的进程ID
pid=$!

# 为"mytun"接口分配IP地址
sudo ip addr add 192.168.0.1/24 dev mytun

# 启用"mytun"接口
sudo ip link set up dev mytun

# 按下Ctrl+C时，杀死"rust-tcp"程序
trap "kill $pid" INT TERM

# 等待"rust-tcp"程序执行完毕
wait $pid
